package com.bot.nft.module.chain.domain;


import lombok.Data;

@Data
public class CallBackInfo {

    private String operationId;// 操作 ID
    private int module;// 交易模块
    private int operation;// 用户操作类型
    private String txHash; // 交易哈希
    private int status;// 交易状态，1 成功; 2 失败
    private String message; // 交易失败的错误描述信息
    private long blockHeight;// 交易上链的区块高度
    private String timestamp; // 交易上链时间（UTC 时间）

    // NFT部分
    private Nft nft;

    // MT部分
    private Mt mt;

    // Record部分
    private Record record;

    // Kind部分
    private String kind;

    // 构建NFT、MT和Record的嵌套实体类
    @Data
    public static class Nft {
        private String classId;
        private String id; // 这里使用String类型，实际使用时根据服务类型转换为int或String
    }

    @Data
    public static class Mt {
        private String classId;
        private String mtId;
    }

    @Data
    public static class Record {
        private String recordId;// 区块链存证 ID
        private String certificateUrl; // 区块链存证证书的下载链接；证书下载链接并非长期有效，请您尽快将证书文件下载至本地并妥善保管。
    }

}